package com.rxh.pojo.payment;

import com.rxh.pojo.core.*;
import com.rxh.pojo.sys.SysConstant;

import java.util.List;

public class Trade {
    // 平台Order对象
    private CoreOrder coreOrder;
    // 平台coreOrderDetail对象
    private CoreOrderDetail coreOrderDetail;
    // 平台MerchantOrder对象
    private CoreMerchantOrder coreMerchantOrder;
    // 收单机构，用于Cross判断发往对应通道
    private CoreAcquirer coreAcquirer;
    // 卡片信息
    private CoreCardDetail coreCardDetail;
    // 平台Order变更对象
    private CoreOrderChange coreOrderChange;
    // 持卡人省份系统常量
    private SysConstant billProvinceConstant;
    // 收件人省份系统常量
    private SysConstant shipProvinceConstant;

    /*
     * 收单账户，含有通道相关信息：如通道交易地址等，
     * params字段银行参数：json字符串，此为旧系统设置不合理暂定，需要修改！
     */
    private CoreAcquirerAccount coreAcquirerAccount;
    // 商户报文对应对象，含有报文所有信息，优先从该对象获取需要的参数！
    private TradeObject tradeObject;
    // 商品数组对象
    private List<ProductDetail> productDetails;
    //通道信息对象
    private ChannelOrderInfo channelOrderInfo;

    private CoreCardholder coreCardholder;

    public CoreOrder getCoreOrder() {
        return coreOrder;
    }

    public void setCoreOrder(CoreOrder coreOrder) {
        this.coreOrder = coreOrder;
    }

    public CoreOrderDetail getCoreOrderDetail() {
        return coreOrderDetail;
    }

    public void setCoreOrderDetail(CoreOrderDetail coreOrderDetail) {
        this.coreOrderDetail = coreOrderDetail;
    }

    public CoreMerchantOrder getCoreMerchantOrder() {
        return coreMerchantOrder;
    }

    public void setCoreMerchantOrder(CoreMerchantOrder coreMerchantOrder) {
        this.coreMerchantOrder = coreMerchantOrder;
    }

    public CoreAcquirer getCoreAcquirer() {
        return coreAcquirer;
    }

    public void setCoreAcquirer(CoreAcquirer coreAcquirer) {
        this.coreAcquirer = coreAcquirer;
    }

    public CoreCardDetail getCoreCardDetail() {
        return coreCardDetail;
    }

    public void setCoreCardDetail(CoreCardDetail coreCardDetail) {
        this.coreCardDetail = coreCardDetail;
    }

    public CoreOrderChange getCoreOrderChange() {
        return coreOrderChange;
    }

    public void setCoreOrderChange(CoreOrderChange coreOrderChange) {
        this.coreOrderChange = coreOrderChange;
    }

    public SysConstant getBillProvinceConstant() {
        return billProvinceConstant;
    }

    public void setBillProvinceConstant(SysConstant billProvinceConstant) {
        this.billProvinceConstant = billProvinceConstant;
    }

    public SysConstant getShipProvinceConstant() {
        return shipProvinceConstant;
    }

    public void setShipProvinceConstant(SysConstant shipProvinceConstant) {
        this.shipProvinceConstant = shipProvinceConstant;
    }

    public CoreAcquirerAccount getCoreAcquirerAccount() {
        return coreAcquirerAccount;
    }

    public void setCoreAcquirerAccount(CoreAcquirerAccount coreAcquirerAccount) {
        this.coreAcquirerAccount = coreAcquirerAccount;
    }

    public TradeObject getTradeObject() {
        return tradeObject;
    }

    public void setTradeObject(TradeObject tradeObject) {
        this.tradeObject = tradeObject;
    }

    public List<ProductDetail> getProductDetails() {
        return productDetails;
    }

    public void setProductDetails(List<ProductDetail> productDetails) {
        this.productDetails = productDetails;
    }

    public ChannelOrderInfo getChannelOrderInfo() {
        return channelOrderInfo;
    }

    public void setChannelOrderInfo(ChannelOrderInfo channelOrderInfo) {
        this.channelOrderInfo = channelOrderInfo;
    }

    public CoreCardholder getCoreCardholder() {
        return coreCardholder;
    }

    public void setCoreCardholder(CoreCardholder coreCardholder) {
        this.coreCardholder = coreCardholder;
    }
}
